home *** CD-ROM | disk | FTP | other *** search
/ Adobe Graphics & Publishing SDK 1996 December / Adobe Graphics & Publishing SDK 1996 December.iso / mac / PageMaker 6.5 SDK Mac / SourceCode / Includes / CIWindow.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-11-18  |  2.4 KB  |  74 lines  |  [TEXT/CWIE]

  1. /***[f*****************************************************************
  2.  *      ciwin.h -- Component Interface for PageMaker Windows.
  3.  *
  4.  *      Copyright 1996 (c) Adobe Systems, Inc. All Rights Reserved
  5.  *
  6.  *      Public version
  7.  *
  8.  *
  9.  * 
  10.  ***f]*****************************************************************/
  11.  
  12. #ifndef __CIWIN_H
  13. #define __CIWIN_H
  14.  
  15. #include "pmtypes.h"
  16.  
  17. #if defined(MACINTOSH)
  18. typedef PMBool (*MACPROC)(EventRecord *);
  19. #endif
  20. #ifdef __cplusplus
  21. // menu states for AddToMenu
  22. #define kAdnLayoutState        0x0004        // enable in layout mode
  23. #define kAdnStoryEditState    0x0008        // enable in story editor
  24. #define kAdnNoPubState        0x0010        // enable in no pub state
  25.  
  26. // class to define PageMaker window style
  27. class CIPMWinStyle : public CIInterface
  28. {
  29. public:
  30.     virtual void SetBorderState(PMBool bBorder)=0;
  31.     virtual void SetVisibilityState(PMBool bIsVisible)=0;
  32.     virtual void SetTitleBarState(PMBool bHasTitleBar)=0;
  33.     virtual void SetParentState(PMBool bIsParent)=0;
  34.     virtual void SetChildState(PMBool bIsChild)=0;
  35.     virtual void SetZoomState(PMBool bHasZoomBox)=0;
  36.     virtual void SetSizeState(PMBool bIsSizeable)=0;
  37.     virtual void SetCloseState(PMBool bHasCloseBox)=0;
  38.     virtual void SetMaximizeState(PMBool bIsMaximized)=0;
  39.     virtual void SetStayOnTopState(PMBool bIsStayOnTop)=0;
  40.     virtual void SetModalState(PMBool bIsModal)=0;
  41.     virtual void SetDefaultWindowState(PMBool bIsDefaultWindow)=0;
  42. };
  43.  
  44. // class to create and destroy PageMaker window
  45. class CIPMWindow : public CIInterface
  46. {
  47. public:
  48.     virtual PMBool Create(CIPMWinStyle *pPlugInWinStyle, void *thePrivateWinData)=0;
  49.     virtual PMBool Destroy()=0;
  50.     virtual void SetPrivateWinData(void *thePrivateWinData)=0;
  51.     virtual void *GetPrivateWinData()=0;
  52.     virtual void SetTitle(char *title)=0;
  53. #if defined (WINDOWS)
  54.     virtual HWND GetWindowHandle()=0;
  55.     virtual void GetSizeLimit(RECT *rect)=0;
  56.     virtual void SetSizeLimit(RECT rect)=0;
  57. #endif
  58. #if defined(MACINTOSH)
  59.     virtual GrafPtr GetWindowHandle()=0;
  60.     virtual void GetSizeLimit(Rect *rect)=0;
  61.     virtual void SetSizeLimit(Rect rect)=0;
  62. #endif
  63.     // menuState is kAdnLayoutState, kAdnStoryEditState, kAdnNoPubState
  64.     virtual PMErr AddToMenu(char *pShowMenuString, char *pHideMenuString,
  65.             WORD menuState=kAdnLayoutState|kAdnNoPubState)=0;
  66.     virtual PMErr DeleteFromMenu(char *pShowMenuString, char *pHideMenuString)=0;
  67.     virtual void Show()=0;
  68.     virtual void Hide()=0;
  69.     virtual PMBool IsVisible()=0;
  70. };
  71.  
  72. #endif
  73. #endif
  74.